1. Field of the Invention
The present invention relates generally to searching and querying computers connected to a distributed network such as the Internet. More particularly, the invention relates to methods for searching servers, computers, and websites in a network that are identified by unique IP addresses.
2. Description of Related Art
The explosive growth of the Internet or “World Wide Web” in recent years has resulted in a tremendous amount of information becoming available to the public. Most commonly, the information that is made available at a website is commercial (i.e., merchants attempting to attract customers to their stores or “virtual stores”), informative (e.g., government websites and websites of certain organizations), or some combination of the two. A website exists by storing the information or content of the website on a server computer that is open to be accessed via the Internet. Every server that hosts content for the Internet is uniquely identifiable by an address, typically referred to as an Internet Protocol or “IP” address, that describes the “location” of that server on the Internet such that it can be found and accessed. Today, the volume of information accessible via the Internet is so vast that a user could not possibly find relevant items of interest without an effective searching mechanism, typically referred to as a search engine.
Traditional search engines employ one of two approaches. The first search technique involves periodic indexing of websites, as used by standard Internet search engine sites (portals such as AltaVista, Excite, and Yahoo!), or “meta-search” style sites (such as MetaCrawler, MetaSearch, and Ask Jeeves). The greatest disadvantage to using this search technique is that it is nearly impossible to accurately index even a large portion of the Internet. According to the NEC Research Institute, no single search engine indexes more than about 16 percent of the Internet. Moreover, this 16 percent excludes websites that are behind registration screens or authentication requirements. Furthermore, according to the same study, approximately 14 percent of the results returned by indexing search engines are invalid, indicating that the information that the search engines actually do index becomes outdated quickly with respect to the time required for the indexing process.
The second search method involves a software application (referred to as an “agent,” “crawler,” “robot,” or “spider”) that randomly wanders around the Internet following one random link after another, indexing and categorizing websites as they are encountered. While this method has the advantage that it is constantly working to explore the Internet, its random walking characteristic makes it difficult to employ in an organized or directed manner. Moreover, it still only succeeds in indexing a very small portion of the Internet.
In addition to poor coverage, both searching methods do a poor job of ascertaining content available on the Internet. The lack of effectiveness and accuracy of both methods creates a significant level of unreliability in developing mission-critical applications where content-based Internet searching is crucial to the success and integrity of the system application itself. For example, filters are a common type of network navigation tool, most commonly known in the context of the Internet, that often cooperate with searching tools. Since the Internet is almost completely unrestricted in the type of content that may be made available for widespread access and dissemination, filters are extremely valuable to those who wish to limit accessibility to personally objectionable material, such as parents of young children. Filters allow a user (e.g., the parent) to specify types of content that are unsuitable for viewing on the particular computer that is equipped with the filtering software. Filters function by screening websites before or as they are accessed and making a determination as to whether the content of a selected website should be displayed, in accordance with the conditions and parameters inputted into the filter. Since filters often work closely with search engines (either separate search engines or built-in search engines), it is critical to the filter's ability to accurately and completely screen offensive content that the filter have access to a reliable and comprehensive search engine.
Finally, many prior art search methods suffer from the additional disadvantage that they must be significantly modified as computer technology, and in particular network and Internet technology, evolve. For example, many existing search processes would have to be significantly reprogrammed if the current scheme of IP address numbering changed, as is being proposed in various circles. Also, there are a multitude of services that may be present within a distributed network such as the Internet. These services include, but are not limited to: Hypertext Transfer Protocol (“HTTP”); Hypertext Transfer Protocol, Secure (“HTTPS”); File Transfer Protocol (“FTP”); Simple Mail Transfer Protocol (“SMTP”); Network News Transfer Protocol (“NNTP”); User Datagram Protocol (“UDP”); Internet Relay Chat (“IRC”), and other application protocols/server ports running over Transmission Control Protocol/Internet Protocol (TCP/IP). Many prior art search techniques cannot accommodate all of these services. In addition, many prior art methods do not possess the flexibility to search specific ranges of addresses or exclude specified addresses.
Therefore, there is a need for an effective search process that can accurately and comprehensively search a large percentage of the Internet. Moreover, there is a need for a search process that is capable of performing its searching process within a relatively short period of time to avoid its results becoming prematurely obsolete and inaccurate. Additionally, there is a need for a search process that can be applied in a focused and directed manner, enables effective content-based filtering, is compatible with filtering tools, and provides significant flexibility to adapt as technology and user needs change. The present invention provides such a search engine for enabling a filter to perform its functions. In addition, the present invention is more flexible than prior art search processes in that it does not impose limitations on filters used in conjunction with the search process.